DBCtrlGrid posun Entrem po polozkach

Otázka od: Viktor Marek

19. 9. 2004 19:42

Zdravim

Na DBCtrlGridu [DBCtrlGrid.ColCount:=1 DBCtrlGrid.RowlCount:=2] mam DBEdit1
a DBEdit2.
Jak docilit aby po stisknuti Entru kurzor skocil z DBEdit1 na DBEdit2 a
dale.

OnKeyPress nefunguje [if key = chr(13) then SelectNext(ActiveControl as
TWinControl, True, True );]

Diky za radu

Viktor Marek
viktor@vol.cz


Odpovedá: Vlastimil Burian

19. 9. 2004 21:10

Na DBCtrlGridu [DBCtrlGrid.ColCount:=1 DBCtrlGrid.RowlCount:=2] mam DBEdit1
a DBEdit2.
Jak docilit aby po stisknuti Entru kurzor skocil z DBEdit1 na DBEdit2 a
dale.
OnKeyPress nefunguje [if key = chr(13) then SelectNext(ActiveControl as
TWinControl, True, True );]

------------------

neznam sice komponentu DBCtrlGrid ale kdyz nejde ten vyse uvedeny postup tak
potom sou 2 moznosti ... 1. pokud tam mas jenom par tech DBEditu ... pak bys
do kazdyho do OnKeyPress dal DBEdit?.SetFocus; kde otaznik je cislo anebo
jich tam mas hodne pak potom by se vyplatilo vsechny pojmenovat podle
transparentniho klice a dat do osetreni udalosti OnKeyPress univerzalni
metodu ... dyztak dej vic infa



Odpovedá: Viktor Marek

19. 9. 2004 21:41

Zdravim

To uz jsem zkousel. Jestlize mam focus na DBEdit1 a dam Enter, DBEdit1 focus
ztrati a dalsim Entrem ho zase ziska.
Takze posun na DBEdit2 se proste nekona.

Viktor Marek
viktor@vol.cz

> neznam sice komponentu DBCtrlGrid ale kdyz nejde ten vyse uvedeny postup
tak
> potom sou 2 moznosti ... 1. pokud tam mas jenom par tech DBEditu ... pak
bys
> do kazdyho do OnKeyPress dal DBEdit?.SetFocus; kde otaznik je cislo anebo
> jich tam mas hodne pak potom by se vyplatilo vsechny pojmenovat podle
> transparentniho klice a dat do osetreni udalosti OnKeyPress univerzalni
> metodu ... dyztak dej vic infa


Odpovedá: Jan Novak

20. 9. 2004 6:13

> Jak docilit aby po stisknuti Entru kurzor skocil z DBEdit1 na
DBEdit2

Standardni chovani Enter je stisknuti buttonu s vlastnosti 'default' a
kdyz udelas aplikaci s jinym chovanim, tak uzivatele akorat dopletes.

Ale nic ti nebrani na tom default tlacitku udelat kontrolu formulare
zleva doprava a v pripade chybejici/spatne hodnoty v nejakem Editu
zmenit ModalResult na mrNone a vratit fokus na nej.

Jinak na OnKey je potreba jeste udelat key=0;